package com.itheima.service;

import com.github.pagehelper.Page;
import com.itheima.entity.Result;
import com.itheima.pojo.Admin;

import java.util.Map;

public interface AdminService {
    /**
     * 2020年8月6日09:05:54
     * 添加用户
     * @param admin
     */
    void add(Admin admin);

    /**
     * 2020年8月6日10:08:49
     * 分配角色信息列表
     * @param adminUid
     * @return
     */
    Map<String, Object> assign(String adminUid);

    /**
     * 2020年8月6日10:41:00
     * 根据adminUids删除用户
     * @param adminUids
     */
    void deleteByAdminUids(String[] adminUids);

    /**
     * 2020年8月6日10:54:57
     * 更新用户信息
     * @param admin
     */
    void edit(Admin admin);

    /**
     * 2020年8月6日14:29:13
     * 分页查询用户
     * @param currentPage
     * @param pageSize
     * @param keywords
     * @return
     */
    Page<Admin> findPage(Integer currentPage, Integer pageSize, String keywords);

    /**
     * 2020年8月6日15:56:08
     * 重置管理员密码
     * @param uid
     */
    void restPwd(String uid);

    /**
     * 2020年8月7日10:22:57
     * 设置新手机号或者邮箱
     * @param uid
     * @param newInfo
     * @param validCode
     * @return
     */
    Result updateEmail(String uid, String newInfo, String validCode);

    Admin selectAdminByUsername(String name );
}
